DuckDB 回测引擎 因子/策略历史赚钱吗?
2025-08-22 ~ 2026-08-21
MA20 放量突破(趋势跟随)
242 交易日 · 前复权
标的池:159758.SZ
⚠️ 标的池验证版:本报告限定在 159758.SZ 单标的回测,交易笔数较少;专家分析文案(02/03/05/07 区)基于全市场回测撰写,仅作对照参考。
01策略说明
用户定义规则 · 五要素齐全(买入/卖出时机+仓位)· 执行口径标注
买入时机收盘站上 MA20 且量比>1.2(放量确认),次日开盘买入
买入仓位满仓(单标的 100%,初始资金 100 万)
卖出时机收盘跌破 MA20 次日开盘卖出;或单日跌超 7% 止损
卖出仓位清仓(100%)
选股条件全市场 A 股,成交额 ≥1 亿(无人问津的小票不参与)
候选选择当日满足买入信号的全部股票中,选取「当日成交额最大」的 1 只(热度代理 [ASSUMED]);当日无候选则继续空仓等待
💡 策略本质:中线均线突破——放量站上 20 日线视为趋势启动。64% 的假突破率说明:20 日线在震荡市里太容易被'放量'骗过。
02回测总览
模型输出 · [MODEL]
胜率偏低 · 负超额
近 1 年 25 笔:胜率 24.0%、盈亏比 2.01、总收益 -34.9%(跑输沪深300 52.1pct)、回撤 -39.6%——放量站上 20 日线多数是假突破。
结论—— MA20 放量突破近 1 年 -34.9%,25 笔中 19 笔亏损、16 笔跌破 MA20 离场——'放量站上 20 日线'的经典买点假突破率高达 64%。
数据含义—— 唯一大肉光库科技 +42%(光模块主线),其余盈利仅 +4%~+6%;平均盈 +14.6% vs 平均亏 -7.0%,盈亏比 2.01 说明突破后的趋势段确实能赚,但胜率 24% 太低。
失败模式—— 16 笔跌破 MA20 卖出(突破后 1-3 周即跌破=假突破)、5 笔单日 -7% 止损、4 笔连亏——航天发展 -15% 是典型:放量突破后快速回落,量能确认反而成了追高信号。
横向对比—— 10 策略排名第 7(-34.9%):同为突破型,比海龟(+79%)差 114pct——海龟突破 20 日最高价(更强势)+10 日最低价离场(更宽松),MA20 突破阈值太低、离场太紧。
优化方向—— ①突破位置过滤:只做 60 日新高附近的 MA20 突破(低位突破无效)②量比提至 1.5 ③离场改 MA10 或突破价 -5%(容忍回踩)④突破当日涨幅 >3% 才算强势突破。
投资指导—— MA20 放量突破需叠加'新高共振'才有效(海龟验证 20 日最高突破可盈利)——实盘把突破阈值提高到 60 日新高、离场放宽,避免低质量假突破。
03收益与回撤
策略净值 vs 沪深300 · 收盘口径
💡 净值在 -20%~-40% 区间震荡下行:光库科技 +42%(2026-02)短暂拉回后持续阴跌——突破策略在无趋势期就是反复止损。
04交易明细
2 笔 · 卖出日=信号触发日次日开盘成交 · 候选=选股日满足买入信号的股票数(均选成交额最大者)
| # | 选股日 | 买入日 | 卖出日 | 触发日 | 股票 | 买价 | 卖价 | 收益 | 天数 | 候选 | 当前资金(¥) | 卖出原因 |
| 1 | 2026-04-01 | 2026-04-02 | 2026-04-07 | 2026-04-03 | 红利质量ETF华夏 159758.SZ | 1.075 | 1.051 | -2.26% | 2 | 1 | ¥977,374 | 跌破MA20 |
| 2 | 2026-04-08 | 2026-04-09 | 2026-05-19 | 2026-05-18 | 红利质量ETF华夏 159758.SZ | 1.074 | 1.12 | +4.25% | 25 | 1 | ¥1,018,943 | 跌破MA20 |
💡 25 笔中 19 笔亏损,盈利高度集中(光库科技 +42% 一笔贡献全部利润)——典型的低胜率突破策略:靠少数大肉覆盖多数小亏。
05卖出原因分布
全部平仓口径 · 共 2 笔
💡 16 笔跌破 MA20 离场(64%)——突破后快速回落的假突破是最大亏损源;量比 1.2 过滤力度不够,需更强的强势确认。
0610 策略横向对比
同一引擎同一区间 · 按总收益排序 · ★=当前策略
| 排名 | 策略 | 交易 | 胜率 | 盈亏比 | 总收益 | 最大回撤 | 年化 |
| 1 | 双均线金叉趋势跟随 趋势跟随 | 6 | 50.0% | 3.18 | +8.0% | -4.4% | +8.4% |
| 2 | MA20 放量突破 ★ 趋势跟随 | 2 | 50.0% | 1.88 | +1.9% | -4.1% | +2.0% |
| 3 | 海龟唐奇安通道突破 趋势跟随 | 4 | 50.0% | 1.12 | +1.4% | -8.9% | +1.4% |
| 4 | W底双底突破 形态反转 | 2 | 50.0% | 2.01 | +1.3% | -4.1% | +1.3% |
| 5 | 60日新低超跌反弹 超跌反转 | 1 | 100.0% | - | +1.0% | -1.4% | +1.0% |
| 6 | 涨停次日低吸 打板低吸 | 0 | 0% | - | +0.0% | 0.0% | +0.0% |
| 7 | 二连板打板接力 打板接力 | 0 | 0% | - | +0.0% | 0.0% | +0.0% |
| 8 | 120日新高强势追涨 动量追涨 | 3 | 0.0% | 0.00 | -3.2% | -5.9% | -3.3% |
| 9 | RSI 超卖反转 超跌反转 | 4 | 25.0% | 0.71 | -3.2% | -7.2% | -3.4% |
| 10 | 均线多头回踩 趋势回踩 | 6 | 16.7% | 1.20 | -3.5% | -7.0% | -3.6% |
| 11 | 布林带突破 波动突破 | 4 | 25.0% | 0.76 | -9.9% | -12.3% | -10.3% |
💡 全策略对比:海龟(20 日最高突破)+79% vs MA20 突破 -34.9%——突破阈值越高、离场越宽,策略越强;'突破 20 日最高价'才是真正的强势信号。
07优化建议与风险
基于回测证据 · 模型输出
优化建议(按优先级)
提高突破阈值突破 60 日最高价(半年新高)才入场——与海龟的 20 日最高突破对齐,过滤低位弱突破
强势确认突破当日涨幅 ≥3% 且量比 ≥1.5(强势突破),涨幅 <3% 视为弱突破放弃
离场放宽跌破 MA20 改跌破突破价 -5% 或 MA10(容忍正常回踩),避免 1-2 天洗盘出局
位置过滤股价处于 60 日新高附近(距高点 <10%)的突破才有效,低位横盘突破多为假信号
风险提示
量比/涨幅确认仍无法完全过滤假突破(结构性行情中放量突破后回落常见)
25 笔样本偏小,光库科技 +42% 单笔影响大
未计印花税与冲击成本;回测按开盘价成交,实际追突破滑点更大
数据来源:同花顺金融数据(hithink-finance v0.1.5,本地 DuckDB v_daily_qfq 前复权日K + index history 沪深300 + symbol list 名称映射);回测区间 2025-08-22~2026-08-21(242 交易日);策略:MA20 放量突破(趋势跟随),五要素定义见 strategies.json;口径:涨停=前复权相邻日收益率(主板 ≥+9.8%、创业板/科创板 ≥+19.8%);RSI14 为 SMA 均值口径 [ASSUMED];布林=MA20±2σ(stddev_samp);唐奇安=前 20 日最高/前 10 日最低(不含当日);交易按开盘价成交、满仓单标的、含单边 0.03% 费率(印花税未含);当前资金=初始 100 万按每笔清仓收益滚动累计;总收益含期末未平仓浮动;卖出日=信号触发日(跌超/死叉/破位等)的下一交易日,按开盘价成交;候选=选股日满足买入信号的全部股票数,均选当日成交额最大者(热度代理 [ASSUMED])。回测结果为历史数据模拟 [MODEL],不代表未来表现。仅供研究参考,不构成个人投资建议。